package com.py.pythink.service.impl;

import com.py.pythink.bo.ContentDto;
import com.py.pythink.service.intf.UserCommentService;
import org.springframework.stereotype.Service;

import java.util.ArrayList;
import java.util.List;

@Service
public class UserCommentServiceImpl implements UserCommentService {
    @Override
    public List<ContentDto> findParent(List<ContentDto> comments) {
        return null;
    }
//    @Override
//    public List<ContentDto> findParent(List<ContentDto> comments) {
//        for (ContentDto comment : comments) {
//            ArrayList<ContentDto> fatherChildren = new ArrayList<>();
//            // 递归处理子级的回复，即回复内有回复
//            findChildren(comment,fatherChildren);
//             // 将递归处理后的集合放回父级的孩子中
//            comment.setChildren(fatherChildren);
//
//        }
//        return comments;
//    }
//    private void findChildren(ContentDto parent,List<ContentDto> fatherChildren){
//        //找出直接子级
//        List<ContentDto> comments = parent.getChildren();
//        //遍历直接子极的子集
//        for(ContentDto comment:comments){
//           // 若非空，则还有子级，递归
//            if(!comment.getChildren().isEmpty()){
//                findChildren(comment,fatherChildren);
//            }
//            // 已经到了最底层的嵌套关系，将该回复放入新建立的集合
//            fatherChildren.add(comment);
//            // 容易忽略的地方：将相对底层的子级放入新建立的集合之后
//            // 则表示解除了嵌套关系，对应的其父级的子级应该设为空
//            comment.setChildren(new ArrayList<>());
//        }
//
//
//    }
}
